#include <stdio.h>
#include "string.h"

int main() {
    SqString s, t, r, sub;
    char cstr[] = "hello world";
    StrAssign(&s, cstr);
    printf("原字符串: %s\n", s.data);

    StrCopy(&s, &t);
    printf("复制后的字符串: %s\n", t.data);

    printf("字符串比较结果 (s vs t): %d\n", Strcmp(&s, &t));

    r = Concat(&s, &t);
    printf("连接后的字符串: %s\n", r.data);

    printf("字符串比较结果 (s vs r): %d\n", Strcmp(&s, &r));

    // 测试SubString函数：从位置2开始，提取5个字符
    if (SubString(&s, 2, 5, &sub)) {
        printf("子字符串 (从位置2开始5个字符): %s\n", sub.data);
    } else {
        printf("提取子字符串失败\n");
    }

    // 再测试一个子字符串：提取"world"
    if (SubString(&s, 7, 5, &sub)) {
        printf("子字符串 (从位置7开始5个字符): %s\n", sub.data);
    } else {
        printf("提取子字符串失败\n");
    }

    return 0;
}